\section{相关工作}

\begin{figure}
\centering
\tabulinesep2pt
\begin{tabu}{r<{\quad}cccc}
  \toprule
  \rowfont\bfseries
	机制 &	去中心化控制 &	低延迟 &	灵活的信任 &	渐进安全性\\
	\midrule
	工作量证明 & \checkmark &&& \\
	权益证明 & \checkmark & 或许有 && 或许有	\\
	拜占庭一致性 && \checkmark & \checkmark & \checkmark \\
	Tendermint & \checkmark & \checkmark && \checkmark \\
	{\FBA}(本工作) & \checkmark & \checkmark & \checkmark & \checkmark \\ 
	\bottomrule
\end{tabu}
\caption{不同共识机制的性质比较}
\label{fig:relwk}
\end{figure}


图\ref{fig:relwk}总结了SCP和以往的共识机制的区别。最有名的去中心化共识机制是由比特币~\cite{bitcoin2008}发展而来的工作量证明(Proof-of-Work，PoW)模式。比特币采用两方面措施来达成共识。首先，它为理性参与者提供了激励机制以期望他们表现良好。其次，它通过工作量证明~\cite{Dwork:1992:PVP:646757.705669}的算法来结算交易，这一设计保护系统免受没有绝大多数计算能力恶意行为者的影响。比特币强烈地表明了人们去中心化共识的迫切希求~\cite{Bonneau:2015em}。

然而工作量证明方式是存在局限的。首先，它浪费资源：通过2014年一次估计，比特币消耗的电力或许和爱尔兰整个国家的消耗相当~\cite{6912770} 。第二，安全交易结算需要忍受几分钟甚至几十分钟的预期延时~\cite{Karame:2012jt} 。最后，和传统的加密协议不同，工作量证明算法不提供渐进安全。考虑非理性攻击者或者破坏共识的外在激励，少量的计算优势可以使得安全假设失效，导致交易历史被所谓的``51\%''攻击重写。更糟的是，最初拥有少于50\%算力的攻击者可以利用系统向加入他们的成员提供不成比例的奖励。作为拥有最大算力支持的标杆数字货币，比特币拥有一定程度面对51\%攻击的保护能力。稍小一点的系统则已经成了牺牲品~\cite{attack_bbt2013,attack_cb2013}，暴露了任何不基于比特币区块链的工作量证明系统的一个问题。

工作量证明的一个替代方案是权益证明(Proof-of-State，PoS)，这种系统中的共识依赖提供抵押的各方。类似于工作量证明，奖励鼓励理性参与者遵守协议；有些系统还惩罚作恶~\cite{slasher2014, neucoin2015} 。权益证明使得所谓的``零成本''攻击成为可能，其中之前提供抵押但后来兑换并花掉的各方可以回来重写他们仍然拥有权益时的历史。为了减轻这种攻击的危害，系统把工作量证明结合到权益证明——正比于权益降低所需工作量——或者延缓抵押归还足够长时间直到其它(有时是非正式的)共识机制建立不可逆转的检查点。

还有另一个共识方式是拜占庭协议~\cite{Pease:1980:RAP:322186.322188,Lamport:1982:BGP:357172.357176}，其最知名的变形是PBFT~\cite{Castro:1999:PBFT}。拜占庭一致性在存在一部分参与者的随意(包括非理性)行为的情况下可以确保共识。这方式有两个令人瞩目的属性。首先，共识能够快速而且高效。第二，信任和资源所有权解耦，这使得小的非营利机构帮助更强力的组织比如银行或者认证中心保持诚实成为可能。然而麻烦的是各方必须在精确的参与者列表上达成一致。还有必须防止攻击者多次加入系统或超出系统容错范围，即所谓的``女巫攻击''~\cite{Douceur:2002:SA:646334.687813}。BFT-CUP~\cite{Alchieri:2008:BCU:1496310.1496316}容许未知参与者，但仍然预设一个避免女巫的中心化的准入控制机制。

一般而言，拜占庭一致性系统中的成员关系是通过中心权威或者封闭式协商来设定的。之前去中心化准入尝试放弃了一些优势。Ripple采用的方式是发布一个参与者他们自己可以修改的``启动器''成员列表，并希望人们的修改微不足道或者被绝大多数参与者所重现。不幸的是因为不同的列表导致安全担保无效~\cite{ripple2014}，实际情形下用户不愿意编辑这个列表，于是巨大的权力最终集中到启动器列表的维护者。另一种方式为Tendermint所采用~\cite{tendermint2014}，它基于权益证明的成员资格。然而这样做又把信任捆绑到资源所有权上了。SCP是第一个给参与者最大化的自由来选择信任哪些其它参与者组合的拜占庭一致性协议。